微服务安全服务模型架构服务标准设计原则有哪些
微服务安全服务模型架构服务标准设计原则有以下这些:
服务无状态:服务无状态(Service Statelessness)是指服务通过推迟或避免状态信息的管理,从而最小化资源消耗。具备无状态的服务通常有一些明显的设计特征。例如,高度业务流程无关的逻辑,使得服务没有被设计为保存任何特定业务流程中的状态信息;服务契约的约束很少,从而能够在运行时接收和传输更广泛的状态数据等。服务无状态性有助于增强服务的可扩展性。
服务可重用:要实现服务可重用(Service Reusability),首先需要确保建立无关功能性的上下文(Context)结构,也就是说与服务封装在一起的上下文对任何使用场景都有足够的无关性,这样服务才能被认为具备可重用性。同时,服务内部的业务逻辑足够通用,以便能够用到不同类型的服务消费者的众多场景中。而且,服务逻辑可以被并发访问,服务设计为在一个或多个消费者同时访问时具备同样的访问效果。
服务可发现:服务可发现(Service Discoverability)是指服务具备能够用于传递的元数据构建能力,通过这些元数据可以有效地发现和解释服务。如果存在服务注册中心,那么可以通过这些元数据与注册中心之间建立服务注册和发现机制。如果没有注册中心,我们也需要通过合适的服务描述语言,构成服务提供者与消费者之间的服务约定。
服务自治:服务自治(Service Autonomy)是指服务对其低层运行时环境具有高度的控制权。显然,为了实现服务自治,服务契约应该表达定义明确的功能边界,这个边界不应该与其他服务的功能边界相重叠。同时,服务应该被部署在一个独立而隔离的环境中,承载服务的这个环境也应该具备能够处理高并发的访问能力,以便更好地实现服务可伸缩性目的。
服务松耦合:服务松耦合(Service Loose Coupling)的主要目的在于为消费者提供较低的耦合度要求,通常表现在服务提供者和服务消费者能够以适应性的方式随时间进行自我演化,彼此之间的影响达到最小。在实现服务的过程中,服务松耦合原则强调服务契约与技术实现细节上的解耦。关于这些原则的进一步描述,可以参考相关资料。